package com.sky.myapplication.java.weight;

import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.view.View;

import androidx.annotation.Nullable;

import com.sky.myapplication.R;

public class MyViewOne extends View {
    private String mText;
    private int mTextColor;
    private float mTextSize;
    private Rect mBound;
    private Paint mPaint;
//    private Context context;
//    private AttributeSet attrs;
//    private int defStyleAttr;

    public MyViewOne(Context context) {
        super(context);
//        this.context = context;
    }

    public MyViewOne(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
//        this.context = context;
//        this.attrs = attrs;
        init(context, attrs);

    }

    public MyViewOne(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
//        this.context = context;
//        this.attrs = attrs;
//        this.defStyleAttr = defStyleAttr;
    }

    private void init(Context context, AttributeSet attributeSet){
//        mText = "This is Text";
//        mTextColor = Color.BLUE;
//        mTextSize = 28;

        TypedArray a = context.obtainStyledAttributes(attributeSet, R.styleable.MyItemViewTwo);
//        mText = a.getString(R.styleable.MyItemViewTwo_myItemViewTwoText);
        mText = a.getString(R.styleable.MyItemViewTwo_android_text);
        mTextColor = a.getColor(R.styleable.MyItemViewTwo_myItemViewTwoColor, Color.BLUE);
//        mTextSize = a.getDimension(R.styleable.MyItemViewTwo_myItemViewTwoTextSize, 20);
        mTextSize = a.getDimension(R.styleable.MyItemViewTwo_android_textSize, 20);

        mPaint = new Paint();
        mPaint.setColor(mTextColor);
        mPaint.setTextSize(mTextSize);


        mBound = new Rect();
        mPaint.getTextBounds(mText, 0, mText.length(), mBound);
    }

    @Override
    protected void onDraw(Canvas canvas) {
//        canvas.drawText(mText, getX(), getY(), mPaint);
//        super.onDraw(canvas);
        canvas.drawText(mText, getX(), getTranslationY()+20, mPaint);
    }
}
